package cds

/*
**
1 col
null
00 01

2 col

1, null
00 04 01 31
null, 1
00 01 01 31

3 col
1, null, null
00 14 01 31

4 col

null, null, null, null
00 55

1, null, null, null
00 54 01 31
1, null, 1, null
00 44 01 31 01 31
1,1,1,1
00 00 01 31 01 31 01 31 01 31

5 col
1, null, 1, null, null
00 44 01 01 31 01 31

8 col
1, null, .....
00 54 55 01 31
1, 1, null, ....
00 50 55 01 31 01 31

01: 0000 0001
04: 0000 0100
14: 0001 0100
44: 0100 0100
54: 0101 0100

54 55 ->0101 0101 0101 0100
50 55 ->0101 0000 0101 0101

总结：

	一个字节(BYTE) 可以存储4个字段的NULL信息
	第一个字段为NULL, 第一个bit置为1：  01，
	第二个字段为null，第三个bit置为1： 01 00
*/
func NullMask(colidx int) (idx int, mask byte) {
	mask = 1 << byte((colidx%4)<<1)
	idx = colidx / 4
	return
}
